package com.dlc.shop.poly.common.service;


import com.linchuang.seneca.exception.PolyMallException;
import com.linchuang.seneca.request.PolyMallCommonRequest;
import com.linchuang.seneca.response.PolyMallCommonResponse;

/**
 * @author: Seneca.vin
 * @date: 2023/9/12 16:54
 * @description: 菠萝派自建商城service
 */
public interface PolyMallOrderService {

    /**
     * 拉取订单
     *
     * @param request
     * @return
     * @throws PolyMallException
     */
    PolyMallCommonResponse queryOrders(PolyMallCommonRequest request) throws PolyMallException;

    /**
     * 检查售后
     *
     * @param request
     * @return
     * @throws PolyMallException
     */
    PolyMallCommonResponse checkRefund(PolyMallCommonRequest request) throws PolyMallException;

    /**
     * 发货
     *
     * @param request
     * @return
     * @throws PolyMallException
     */
    PolyMallCommonResponse send(PolyMallCommonRequest request) throws PolyMallException;

    /**
     * 商品同步
     * @param request
     * @return
     */
    PolyMallCommonResponse downloadProduct(PolyMallCommonRequest request)throws PolyMallException;

    /**
     * 商品库存同步
     * @param request
     * @return
     */
    PolyMallCommonResponse syncStock(PolyMallCommonRequest request)throws PolyMallException;

    /**
     * 仓库查询接口
     * @param request
     * @return
     * @throws PolyMallException
     */
    PolyMallCommonResponse queryWareHouse(PolyMallCommonRequest request)throws PolyMallException;

    /**
     * 退货退款单下载接口（Differ.JH.Business.GetRefund）
     * @param request 退货退款单下载接口（Differ.JH.Business.GetRefund）
     * @return
     */
    PolyMallCommonResponse getRefund(PolyMallCommonRequest request) throws PolyMallException;
}
